#ifndef DBUSVFSINTERFACE_H
#define DBUSVFSINTERFACE_H

#define KYLIN_MOBILE_PATH "/"
#define KYLIN_MOBILE_SERVICE "com.kylinos.Multiterminal.Manager"
#define KYLIN_MOBILE_INTERFACE "com.kylinos.Multiterminal.Manager"

#include <QObject>
#include "fileinfo.h"
#include "fileinfolist.h"

class DbusVfsInterface : public QObject
{
    Q_OBJECT
    Q_CLASSINFO("D-Bus Interface", KYLIN_MOBILE_SERVICE)
public:
    DbusVfsInterface(QObject *parent = nullptr);

Q_SIGNALS:
    void sigDeviceUpdate(QString);
    void sigFileInfoList(FileInfoList);

public Q_SLOTS:
    QString getDeviceName();
    QString getMountDir();
    void getFileInfoList(QString path);
    void downFile(QStringList fromPathList, QString targetPath);

private:
    QMap<QString, FileInfo> m_fileMap; // 缓存当前目录文件信息
};

#endif // DBUSVFSINTERFACE_H
